package com.bjpowernode.ba05;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;

@Component("student5")
public class Student {

    @Value("多尔衮")
    private String name;
    @Value("50")
    private Integer age;
/*
*   引用类型
*     @Resource:来自jdk中的注解，spring框架提供了对这个注解的功能支持，
*     可以使用它给引用类型赋值，使用的也是自动注入原理，支持byName，byType，默认byName
*使用位置：1.在属性上面
*         2.在set方法上面
* */

    @Resource//默认是byName,先使用byName自动注入，如果没有附上值则改用byType
    private School school;
/*
*   若只想使用byName则需要加上name属性，name的值是bean的id
*
* */


    public Student() {
        System.out.println("无参构造");
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", school=" + school +
                '}';
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}
